Шифрование при помощи шифровальной машины энигмы
Enigma - это криптографической машиной, созданная в 1920-х, как способ для немецких военных обеспечить свои коммуникации. Немецкая армия приобрела эти машины в 1925 году от своего первоначального производителя, Chiffriermaschinen Aktiengesellschaft. Машина Энигма была очень трудна для взлома,что и ценилось немецкой армией.
Механическая часть "Энигмы":
- Клавиатура
- Набор вращающихся дисков - роторов
- Ступенчаый механизм
Роторы были расположены вдоль вала, прилегая к нему. А ступенчатый механизм двигал один или несколько роторов при каждом нажатии на клавишу. Электрическая часть состояла из электрической схемы, соединяющей между собой клавиатуру, коммутационную панель, лампочки и роторы.
Каждый ротор делился на 26 частей, каждая из которых обозначало букву. Буквы на дисках были расставлены в случайном порядке. Оператор путем вращения дисков набирал нужное сообщение, а затем переписывал другую строчку. Человек, принявший данное сообщение, должен был обладать точно таким же устройством с точно такой же расстановкой букв.
"Энигма" была разработана таким образом, чтобы безопасность сохранялась даже в тех случаях, когда шпиону известны роторные схемы, хотя на практике настройки хранятся в секрете. С неизвестной схемой общее количество возможных конфигураций может быть порядка 10114, с известной схемой соединений и других операционных настроек этот показатель снижается до 1023. Пользователи "Энигмы" были уверены в её безопасности из-за большого количества возможных вариантов. Нереальным было даже начать подбирать возможную конфигурацию.
Для "Энигмы" было разработано восемь различных роторов. Внутри каждого из них было установлено 26 различных коммутаций[1]. Если на вход первого ротора поступала буква «N», то на выходе должна быть только «W» и никакая другая буква больше. Попади это буква на второй ротор, она бы уже преобразовалась в «T» и т.д. То есть, каждый ротор выполнял четко поставленную задачу в плане коммуникации.
У этой шифровальной машины была только одна слабость. Она заключалась в том, что заменить ту же "N" на "N" нельзя. Обязательным условием замены букв было такого: буква должна быть заменена на другую букву, но только не на себя.
- Пояснения:
- коммутация – это какое-либо включение, выключение, переключение пассивных и активных ветвей и элементов схемы, приводящее к изменению конфигурации схемы или ее параметров. Предполагается, что коммутация совершается мгновенно (время коммутации равно нулю).